package com.zj.web.bean;
/**
 * 由于数据库与web页面相关的字段不同，所以需要一个转换对象
 * DTO就是这个对象，它的字段与数据库的字段不同，给界面用的
 * 广告轮播图的转换对象，与web页面相关
 * 必须序列化
 * @author zj
 * @date 2023/7/10
 * */

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.springframework.web.multipart.MultipartFile;

import java.io.Serializable;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class BannerDTO implements Serializable {
    //这个bannerId是由idGenrator生成的，它的位数是66位，它在js对应的number类型，但number 类型不能表示这么大的数据，所以我们需要将这个数据在json中以字符串的形式进行传递
    @JsonSerialize(using = ToStringSerializer.class)
    private Long bannerId;   //轮播图id
    private String imageUrl;   // 图片 url   OSS
    private String linkUrl;    //跳转链接
    private String title;       // 轮播图标题
    private Integer bannerStatus;   // 轮播图状态  1.正常  0.停用

    //界面特有的图片，这个数据是不能作为响应的json字符串回传到客户端
    @JsonIgnore
    private MultipartFile imageFile;
}
